
// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-

#ifndef __gnu_xml_libxmlj_transform_GnomeTransformer__
#define __gnu_xml_libxmlj_transform_GnomeTransformer__

#pragma interface

#include <javax/xml/transform/Transformer.h>
#include <gcj/array.h>

extern "Java"
{
  namespace gnu
  {
    namespace xml
    {
      namespace libxmlj
      {
        namespace dom
        {
            class GnomeDocument;
        }
        namespace sax
        {
            class GnomeXMLReader;
        }
        namespace transform
        {
            class GnomeTransformer;
        }
      }
    }
  }
  namespace javax
  {
    namespace xml
    {
      namespace transform
      {
          class ErrorListener;
          class Result;
          class Source;
          class Transformer;
          class URIResolver;
        namespace sax
        {
            class SAXResult;
        }
      }
    }
  }
}

class gnu::xml::libxmlj::transform::GnomeTransformer : public ::javax::xml::transform::Transformer
{

public: // actually package-private
  GnomeTransformer(::javax::xml::transform::Source *, ::javax::xml::transform::URIResolver *, ::javax::xml::transform::ErrorListener *);
private:
  GnomeTransformer(::java::lang::Object *, ::javax::xml::transform::URIResolver *, ::javax::xml::transform::ErrorListener *, ::java::util::Map *, ::java::util::Properties *);
  ::java::lang::Object * newStylesheet();
  ::java::lang::Object * newStylesheetFromStream(::java::io::InputStream *, JArray< jbyte > *, ::java::lang::String *, ::java::lang::String *, ::java::lang::String *, jboolean, jboolean);
  ::java::lang::Object * newStylesheetFromDoc(::gnu::xml::libxmlj::dom::GnomeDocument *);
public:
  virtual void setParameter(::java::lang::String *, ::java::lang::Object *);
  virtual ::java::lang::Object * getParameter(::java::lang::String *);
  virtual void clearParameters();
  virtual void setErrorListener(::javax::xml::transform::ErrorListener *);
  virtual ::javax::xml::transform::ErrorListener * getErrorListener();
  virtual void setURIResolver(::javax::xml::transform::URIResolver *);
  virtual ::javax::xml::transform::URIResolver * getURIResolver();
  virtual void setOutputProperties(::java::util::Properties *);
  virtual void setOutputProperty(::java::lang::String *, ::java::lang::String *);
  virtual ::java::util::Properties * getOutputProperties();
  virtual ::java::lang::String * getOutputProperty(::java::lang::String *);
  virtual ::javax::xml::transform::Transformer * newTransformer();
  virtual void transform(::javax::xml::transform::Source *, ::javax::xml::transform::Result *);
private:
  ::gnu::xml::libxmlj::sax::GnomeXMLReader * getSAXContext(::javax::xml::transform::sax::SAXResult *);
  void transformStreamToStream(::java::io::InputStream *, JArray< jbyte > *, ::java::lang::String *, ::java::lang::String *, ::java::lang::String *, jboolean, jboolean, ::java::io::OutputStream *);
  ::gnu::xml::libxmlj::dom::GnomeDocument * transformStreamToDoc(::java::io::InputStream *, JArray< jbyte > *, ::java::lang::String *, ::java::lang::String *, ::java::lang::String *, jboolean, jboolean);
  void transformStreamToSAX(::java::io::InputStream *, JArray< jbyte > *, ::java::lang::String *, ::java::lang::String *, ::java::lang::String *, jboolean, jboolean, ::gnu::xml::libxmlj::sax::GnomeXMLReader *);
  void transformDocToStream(::gnu::xml::libxmlj::dom::GnomeDocument *, ::java::io::OutputStream *);
  ::gnu::xml::libxmlj::dom::GnomeDocument * transformDocToDoc(::gnu::xml::libxmlj::dom::GnomeDocument *);
  void transformDocToSAX(::gnu::xml::libxmlj::dom::GnomeDocument *, ::gnu::xml::libxmlj::sax::GnomeXMLReader *);
  JArray< ::java::lang::String * > * getParameterArray();
public:
  virtual void finalize();
private:
  void free();
  ::java::io::InputStream * resolveEntity(::java::lang::String *, ::java::lang::String *);
  void setDocumentLocator(::java::lang::Object *, ::java::lang::Object *);
  void warning(::java::lang::String *, jint, jint, ::java::lang::String *, ::java::lang::String *);
  void error(::java::lang::String *, jint, jint, ::java::lang::String *, ::java::lang::String *);
  void fatalError(::java::lang::String *, jint, jint, ::java::lang::String *, ::java::lang::String *);
  ::java::util::Map * __attribute__((aligned(__alignof__( ::javax::xml::transform::Transformer)))) parameters;
  ::java::util::Properties * outputProperties;
  ::javax::xml::transform::URIResolver * resolver;
  ::javax::xml::transform::ErrorListener * errorListener;
  ::java::lang::Object * stylesheet;
public:
  static ::java::lang::Class class$;
};

#endif // __gnu_xml_libxmlj_transform_GnomeTransformer__
